/**
 * 表格标准配置
 */
export const TABLE_PARAMETER = {
  size: 'small', // table大小
  req: {
    // 请求体
    method: 'GET', // 请求方法,默认值'GET'
    body: {}, // 请求体 body，当 method: POST 时有效
    headers: {}, // 请求体 headers
    reName: { pi: 'page', ps: 'size' }, // 重命名请求参数 pi、ps
    params: {}, // 额外请求参数，默认自动附加 pi、ps 至URL
    allInBody: false, // 是否将请求所有参数数据都放入 body 当中（url 地址本身参数除外），仅当 method: 'POST' 时有效
  },
  res: {
    // 返回体配置
    reName: { total: 'totalRecords', list: 'data' }, // 重命名返回参数 total、list，支持 a.b.c 的嵌套写法
    process: null, // 数据预处理
  },
  pi: 1, // 当前页码
  ps: 20, // 每页数量，当设置为 0 表示不分页，默认：10
  page: {
    // 分页器配置
    front: false, // 前端分页(true 由 st 根据 data 长度受控分页，包括：排序、过滤等,false 由用户通过 total 和 data 参数受控分页，并维护 (change) 当分页变更时重新加载数据)
    zeroIndexed: true, // 后端分页是否采用0基索引，只在data类型为string时有效
    placement: 'right', // 分页方向(left,center,right)
    show: true, // 是否显示分页器
    showSize: true, // 是否显示分页器中改变页数
    pageSizes: [20, 35, 50, 100], // 分页器中每页显示条目数下拉框值
    showQuickJumper: true, // 是否显示分页器中快速跳转
    total: 1, // 是否显示总数据量，字符串表示自定义模板（支持三个变量名：total 表示数据总量、range[0] 和 range[1] 表示当前数据范围；变量名统一使用双花括号包裹）
    toTop: true, // 切换分页时返回顶部
    toTopOffset: 100, // 返回顶部偏移值
  },
  multiSort: {
    // 是否多排序，当 sort 多个相同值时自动合并，建议后端支持时使用
    key: 'sort', // 请求参数名
    separator: ',', // 不同属性间分隔符
    nameSeparator: ',', // 列名与状态间分隔符
    global: true, // 是否全局多排序模式 true 表示所有 st 默认为多排序 false 表示需要为每个 st 添加 multiSort 才会视为多排序模式
  },
  sortDef: {
    compare: null,
    reName: {
      ascend: 'asc',
      descend: 'desc',
    },
  },
};
